home *** CD-ROM | disk | FTP | other *** search
/ LOGIC Apps / Logic-APPLE_II_APPS.iso / pc / LOGIC Apple II 5.25" Library - DOS Part 3 / DOS069.dsk / TWONKY I.bas < prev    next >
BASIC Source File  |  2012-02-16  |  6KB  |  232 lines

  1. 100  REM  *** M CAPELLA ***
  2. 110  REM  TWONKY
  3. 120  REM  CREATIVE COMPUTING
  4. 130  REM  MAY 1977 VOL #3 NO 3
  5. 140  GOSUB 2250
  6. 150  DIM A(15,15)
  7. 160 R9 = 0
  8. 170  GOSUB 1840
  9. 180  PRINT "--------------------------------------"
  10. 190  PRINT 
  11. 200  GOSUB 1460
  12. 210  PRINT 
  13. 220  PRINT "MOVE OR SHOOT (M/S)"
  14. 230  INPUT Q8$
  15. 240  IF Q8$ = "M"  THEN 270
  16. 250  IF Q8$ = "S"  THEN 960
  17. 260  GOTO 210
  18. 270  PRINT "WHICH WAY (F/B/R/L)"
  19. 280  INPUT Q8$
  20. 290  IF Q8$ = "F"  THEN 340
  21. 300  IF Q8$ = "B"  THEN 370
  22. 310  IF Q8$ = "L"  THEN 400
  23. 320  IF Q8$ = "R"  THEN 430
  24. 330  GOTO 210
  25. 340 X5 = X
  26. 350 Y5 = Y -1
  27. 360  GOTO 460
  28. 370 X5 = X
  29. 380 Y5 = Y +1
  30. 390  GOTO 460
  31. 400 X5 = X -1
  32. 410 Y5 = Y
  33. 420  GOTO 460
  34. 430 X5 = X +1
  35. 440 Y5 = Y
  36. 450  GOTO 460
  37. 460  IF X5 <1  THEN 510
  38. 470  IF X5 >15  THEN 510
  39. 480  IF Y5 <1  THEN 510
  40. 490  IF Y5 >15  THEN 510
  41. 500  GOTO 540
  42. 510  PRINT "THAT MOVE TAKES YOU OUT OF THE MAZE!"
  43. 520  PRINT "MOVE NOT ALLOWED!!"
  44. 530  GOTO 1430
  45. 540  ON (A(X5,Y5) +1) GOTO 560,640,640,770,810,930
  46. 550  INVERSE : PRINT "ERROR<CTRL-G><CTRL-G><CTRL-G>!": NORMAL : END 
  47. 560 A(X,Y) = 0
  48. 570 A(X5,Y5) = 1
  49. 580 X = X5
  50. 590 Y = Y5
  51. 600  PRINT "MOVE ALLOWED"
  52. 610  GOTO 1430
  53. 640  PRINT "THAT SPACE IS BLOCKED"
  54. 650  GOTO 1430
  55. 670  INVERSE : PRINT "YOU HAVE BEEN R E L O C A T E D !!!": NORMAL 
  56. 680  GOSUB 2720
  57. 690  IF A(Z,W) >2  THEN 540
  58. 700  IF A(Z,W) < >0  THEN 680
  59. 710 A(Z,W) = 1
  60. 720 A(X,Y) = 0
  61. 730 X = Z
  62. 740 Y = W
  63. 750  GOTO 1430
  64. 770  INVERSE : PRINT "YOU HIT THE SUPER TRAP !!": NORMAL : PRINT : PRINT : PRINT "YOU GET A NEW MAZE !"
  65. 780  GOSUB 1840
  66. 790  GOTO 1430
  67. 810  PRINT 
  68. 820  PRINT "I DON'T BELIEVE IT BUT": PRINT "             YOU WON !<CTRL-G><CTRL-G><CTRL-G><CTRL-G><CTRL-G>"
  69. 830  PRINT : PRINT "YOU GOT TO THE OBJECTIVE BEFORE"
  70. 840  PRINT "THE TWONKY GOT YOU"
  71. 850  PRINT : PRINT 
  72. 870  PRINT "TRY AGAIN (Y/N) "
  73. 880  INPUT Q8$
  74. 890  IF Q8$ = "Y"  THEN 160
  75. 900  IF Q8$ = "N"  THEN 2750
  76. 910  GOTO 870
  77. 930  PRINT "YOU STEPPED ON THE TWONKY!"
  78. 940  GOTO 1790
  79. 960  PRINT "WHICH WAY (F/B/R/L)"
  80. 970  INPUT Q8$
  81. 980  IF Q8$ = "F"  THEN 1030
  82. 990  IF Q8$ = "B"  THEN 1060
  83. 1000  IF Q8$ = "L"  THEN 1090
  84. 1010  IF Q8$ = "R"  THEN 1120
  85. 1020  GOTO 210
  86. 1030 S1 = 0
  87. 1040 S2 =  -1
  88. 1050  GOTO 1140
  89. 1060 S1 = 0
  90. 1070 S2 = 1
  91. 1080  GOTO 1140
  92. 1090 S1 =  -1
  93. 1100 S2 = 0
  94. 1110  GOTO 1140
  95. 1120 S1 = 1
  96. 1130 S2 = 0
  97. 1140 R1 = X
  98. 1150 R2 = Y
  99. 1160 R1 = R1 +S1
  100. 1170 R2 = R2 +S2
  101. 1180  PRINT " Z A P --<CTRL-G>-"
  102. 1190  IF R1 <1  THEN 1240
  103. 1200  IF R1 >15  THEN 1240
  104. 1210  IF R2 <1  THEN 1240
  105. 1220  IF R2 >15  THEN 1240
  106. 1230  GOTO 1280
  107. 1240  PRINT "FIZZLE.."
  108. 1250  PRINT "..SHOT LEFT MAZE"
  109. 1260  PRINT "....SHOT MISSED"
  110. 1270  GOTO 1430
  111. 1280  IF A(R1,R2) < >2  THEN 1330
  112. 1290  PRINT "B L A S T ! "
  113. 1300  PRINT "   YOU HIT WALL"
  114. 1310  PRINT "     SHOT MISSED"
  115. 1320  GOTO 1430
  116. 1330  IF A(R1,R2) < >6  THEN 1160
  117. 1340  PRINT "  OUCH!"
  118. 1350  PRINT "TWONKY RETREATS"
  119. 1360 A(R1,R2) = R9
  120. 1370  GOSUB 2720
  121. 1380  IF A(Z,W) < >0  THEN 1370
  122. 1390 A(Z,W) = 6
  123. 1400 R9 = 0
  124. 1410 X1 = Z
  125. 1420 Y1 = W
  126. 1430  GOSUB 1460
  127. 1440  GOTO 1580
  128. 1460  PRINT 
  129. 1470  PRINT "THE TWONKY IS ";
  130. 1480 D = ( SQR( ABS((X1 -X) ^2 +(Y1 -Y) ^2)))
  131. 1490  PRINT D;
  132. 1500  PRINT " UNITS AWAY"
  133. 1510  PRINT "THE OBJECTIVE ";
  134. 1520 D1 = ( SQR( ABS((X2 -X) ^2 +(Y2 -Y) ^2)))
  135. 1530  PRINT D1;
  136. 1540  PRINT " UNITS AWAY"
  137. 1550  PRINT 
  138. 1560  RETURN 
  139. 1580  IF D <2  THEN 1790
  140. 1590 Z2 = Y1
  141. 1600 Z1 = X1
  142. 1610  IF X <X1  THEN 1680
  143. 1620  IF X >X1  THEN 1700
  144. 1630  IF Y <Y1  THEN 1660
  145. 1640 Z2 = Y1 +1
  146. 1650  GOTO 1710
  147. 1660 Z2 = Y1 -1
  148. 1670  GOTO 1710
  149. 1680 Z1 = X1 -1
  150. 1690  GOTO 1710
  151. 1700 Z1 = X1 +1
  152. 1710 A(X1,Y1) = R9
  153. 1720 R9 = A(Z1,Z2)
  154. 1730 A(Z1,Z2) = 6
  155. 1740 X1 = Z1
  156. 1750 Y1 = Z2
  157. 1760  PRINT : PRINT "TWONKY MOVES"
  158. 1770  GOSUB 1460
  159. 1780  IF D > = 2  THEN 210
  160. 1790  PRINT 
  161. 1800  PRINT "> > > S C H L O O R P ! ! ! < < < "
  162. 1810  PRINT : PRINT "THE TWONKY JUST ABSORBED YOU !"
  163. 1820  PRINT "YOU LOST !!!!!!!!!!!!": GOTO 850
  164. 1840  FOR I = 0 TO 15
  165. 1850  FOR Z = 0 TO 15
  166. 1860 A(I,Z) = 0
  167. 1870  NEXT Z
  168. 1880  NEXT I
  169. 1910  FOR I = 1 TO 30
  170. 1920  GOSUB 2720
  171. 1930  IF A(Z,W) < >0  THEN 1920
  172. 1940 A(Z,W) = 2
  173. 1950  NEXT I
  174. 1970  FOR I = 1 TO 22
  175. 1980  GOSUB 2720
  176. 1990  IF A(Z,W) < >0  THEN 1980
  177. 2000 A(Z,W) = 3
  178. 2010  NEXT I
  179. 2030  GOSUB 2720
  180. 2040  IF A(Z,W) < >0  THEN 2030
  181. 2070  GOSUB 2720
  182. 2080  IF A(Z,W) < >0  THEN 2070
  183. 2090 A(Z,W) = 1
  184. 2100 X = Z
  185. 2110 Y = W
  186. 2130  GOSUB 2720
  187. 2140  IF A(Z,W) < >0  THEN 2130
  188. 2150 A(Z,W) = 5
  189. 2160 X2 = Z
  190. 2170 Y2 = W
  191. 2190  GOSUB 2720
  192. 2200  IF A(Z,W) < >0  THEN 2190
  193. 2210 A(Z,W) = 6
  194. 2220 X1 = Z
  195. 2230 Y1 = W
  196. 2240  RETURN 
  197. 2250  HOME : VTAB 5
  198. 2280  PRINT ; TAB( 15);: INVERSE : PRINT "TWONKY": NORMAL 
  199. 2282  PRINT " "
  200. 2283  PRINT "BY MARK CAPPELLA"
  201. 2284  PRINT " "
  202. 2285  PRINT "FM PG 110 OF M/J CREATIVE COMPUTING"
  203. 2286  PRINT "LISTED BY DAVID AMES"
  204. 2287  PRINT " "
  205. 2300  VTAB 15
  206. 2310  INPUT "DO YOU WANT INSTRUCTIONS (Y/N) ?";Q8$
  207. 2330  IF Q8$ = "N"  THEN 2700
  208. 2340  IF Q8$ < >"Y"  THEN 2310
  209. 2350  HOME 
  210. 2380  PRINT "THIS IS THE GAME OF TWONKY"
  211. 2400  PRINT : PRINT : PRINT "     YOU HAVE LANDED ON THE PLANET OF"
  212. 2410  PRINT "TWINKY AND IT'S KING HAS CAPTURED YOU"
  213. 2450  PRINT "HE HAS PUT YOU IN A MAZE THAT IS 15 * 15"
  214. 2460  PRINT "YOU ARE IN THE DARK   YOU MUST GET TO ": PRINT "THE OBJECTIVE SQUARE TO BE SET FREE !"
  215. 2470  PRINT : PRINT "      HAZARDS INCLUDE:": PRINT : PRINT 
  216. 2480  PRINT "SQUARES THAT YOU CAN NOT GO INTO (30)": PRINT "SQUARES THAT RANDOMLY THROW YOU AROUND  THE MAZE (22)"
  217. 2490  PRINT " A SQUARE THAT RESTARTS EVERYTHING ! "
  218. 2500  PRINT : PRINT 
  219. 2510  PRINT "THEN THERE IS ";: FLASH : PRINT "THE TWONKY": NORMAL 
  220. 2520  PRINT "<CR>": INPUT Q$
  221. 2530  PRINT : PRINT "WHO CHASES YOU  AND ABSORBS YOU IF HE": PRINT "GETS LESS THAN 2 UNITS FROM YOU "
  222. 2540  PRINT "HE IS IMMUNE TO ALL TRAPS!!! "
  223. 2550  PRINT : PRINT : PRINT "YOU CAN MOVE ONE SQUARE PER TURN": PRINT "        SHOOT IN ONE DIRECTION "
  224. 2560  PRINT "IF THE TWONKY IS HIT HE DISPLACES TO": PRINT "SOME OTHER SQUARE "
  225. 2570  PRINT : PRINT : PRINT " G O O D   L U C K !"
  226. 2580  PRINT : PRINT "CR": INPUT Q$
  227. 2700  RETURN 
  228. 2720 Z = ( INT( RND(1) *15) +1)
  229. 2730 W = ( INT( RND(1) *15) +1)
  230. 2740  RETURN 
  231. 2750  END 
  232. 9999  PRINT " SAVE TWONKY "